home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Video Toaster 4.0
/
Video Toaster v4.0.iso
/
programs
/
documentation
/
switcherarexx.doc
< prev
next >
Wrap
Text File
|
1993-12-13
|
22KB
|
491 lines
Video Toaster Switcher Arexx Manual 6/6/93
Note about ARexx: The Video Toaster is compatible with the ARexx
programming language. However, due to the complex and technical nature of
programming, users of ARexx cannot be supported by NewTek Technical
Support. Its inclusion is intended primarily for developers, programmers,
and advanced users who are familiar and comfortable with programming
concepts. Commands are subject to change without prior notice.
The Switcher Arexx interface has been implemented as a function host,
rather than the more common command host interface (e.g. ToasterPaint).
Arexx function hosts are initialized using the addlib() function with the
name of the host or library. The name of the switcher host is
'ToasterARexx.port' and it is case-sensitive. ARexx messages sent to the
Switcher must be in function call format. This means that all commands
must be given as arguments to the function Switcher(), rather than being
sent as direct commands to an ARexx command host. If the switcher command
has any parameters, then they too must be given as arguments to Switcher()
or the command will fail. Furthermore, all parameters should be uppercase.
Unless otherwise noted, all function commands return 0 if they were
sucessfully executed, and 10 if a failure occurred. ARexx messages will
only be accepted and processed when the main Switcher control panel is
active. At other times, ARexx messages will be accepted and will remain in
the Switcher's ARexx message port queue until the primary switcher control
panel is active, at which point they will execute.
Most of the commands that directly impact the Switcher will also show up on
the Switcher interface. Almost all ARexx commands that impact the Switcher
behave exactly like their corresponding manual user interface functions
from the Switcher interface. In particular, they are restricted by the
active controlling effect as to whether or not their requested function
will be granted. If an ARexx command function is aborted by a controlling
effect, an OK return code may still be returned. In the case of a failure
code, the current Switcher settings remain unchanged.
Note: There is an additional Project (intended primarily for ARexx or
kiosk use) that is shipped with the Video Toaster. It is called
Positionables,and can be found within the Projects directory. It contains
four grids (effects banks) of each Positioner effect. If you wish to
use this Project, rename the Project filename from Positionables to
###.PJ.Positionable (where ### is a three digit number, the switcher
doesn't like project comments longer than 12 chars). When the Toaster next
accesses the Projects directory, it will list it as available.
Arexx Command Set:
Switcher( AUTO )
This command will invoke an AUTO transition.
Switcher( UATO )
This command performs an un-auto, the equivalent of a Shift-Spacebar action
to reverse a partially transitioned effect back off screen.
Switcher( TBAR, <TBar level> )
This command will invoke a TBar jump movement to the specified level
(0-511). A failure code will be returned if the level argument is invalid.
Switcher( TAKE )
This command will invoke a TAKE.
Switcher( SLOW )
Switcher( MEDM )
Switcher( FAST )
Switcher( SVAR )
The above commands set the speed active for the transition that is
currently in effect. SVAR sets the effect to the last duration chosen with
the variable speed selector.
Switcher( FREZ )
This command toggles the current video state of the Switcher between live
and frozen digital video.
Switcher( NOPR )
This command is a NOP.
Switcher( FRES )
This command resets the frame base count to the moment this command was
processed.
Switcher( WAIT, <Frame count> or GPI )
This command can wait for either a specified frame count or for a GPI
trigger. If 'GPI' is the specified argument, this function will wait for
a GPI trigger to occur before continuing. The trigger can be either a
positive or negative trigger. In the case of GPI triggering being
disabled, this function will become a NOP. If 'GPI' is not the specified
argument, then the argument is assumed to be a digit field specifying a
frame count. In this case the command will wait until the specified frame
count from the last frame base count is reached. In the case of specified
frame count already exceeded, this function will return immediately.
Switcher( CLIP, <Clip level> )
This command will invoke a Clip jump movement to the specified level
(0-257). A failure code will be returned if the level argument is invalid.
Switcher( KEYM )
This command toggles the current key mode state of the Switcher.
Switcher( M001 )
Switcher( M002 )
Switcher( M003 )
Switcher( M004 )
Switcher( MDV1 )
Switcher( MDV2 )
Switcher( MBKG )
The above commands select the specified video source for the Main output.
Switcher( P001 )
Switcher( P002 )
Switcher( P003 )
Switcher( P004 )
Switcher( PDV1 )
Switcher( PDV2 )
Switcher( PBKG )
The above commands select the specified video source for the Preview
output.
Switcher( O001 )
Switcher( O002 )
Switcher( O003 )
Switcher( O004 )
Switcher( ODV1 )
Switcher( ODV2 )
Switcher( OBKG )
The above commands select the specified video source for the Overlay
output.
Switcher(CHGR,<Grid Letter>)
This command is the same as clicking on one of the lettered Grid buttons.
It will accept a letter from A-I and switch to that grid.
Switcher( GRID, <ToolBox Effect> )
This command selects the specified ToolBox Effect as the currently active
Effect in the Switcher. The ToolBox Effect address is a 3 character code.
The first character is the grid selector code A-I for the ToolBox grids.
The second character is the grid row selector 1-4, and the the
third character is the column selector 1-8. This function will return a
failure code if the specified ToolBox Effect does not exist.
Switcher(DOEN)
This command is the same as pressing the enter key on the numeric keypad.
When you are selecting CG pages, it will load the currently displayed CG
page, if you are selecting effects, it will load that effect. If you are
selecting framestores it will load or save them.
Switcher(GOCG)
Switcher(GOLD)
Switcher(GOSA)
These commands are now obsolete. They have been left in for compatibility
reasons, but they do nothing.
Switcher(KEYP)
Switcher(KEYN)
These commands are equivalent to hitting the '+' or '-' keys on the
numeric keypad, which cycle through framestore names, or CG pages,
Switcher(STAT,<Command>)
This command returns information about the status of the Switcher. The
return value depends on which command is used. The possible commands are:
MAIN Return status of the Program (main) row. The binary representation
of the number returned will have a bit set for which input is
selected on the Program row. Thus if input 1 is selected, the
number returned will be 1 (binary 00000001). Similarly, input 3
would yield 8 (binary 00000100), DV2 would yield 64 (binary 00100000),
as it is the sixth button on the row, and fills only the sixth bit
(from the right) in the binary rep. of the returned value.
PREV Return status of the Preview row in the same format as MAIN
OVLY Return status of the Overlay row in the same format as MAIN
FREZ Return status of the Freeze button: 0 for live video, ~0 for frozen video
TEXT Return contents of popup menu in quick access panel
TBAR Return T-Bar position (0-511)
KEYM Return Key Mode ('BLACK', 'WHITE', or 'OFF')
CLIP Return clip level (0-257, 0 and 257 are off)
SPED Return current speed setting. The number returned is a 16-bit value
whose lowest 2 bits indicate which preset speed is in effect (M=00,
F=01, V=10, and S=11). The remaining 14 bits will hold the variable
speed. If the 16 bit value is all 1s or 0s (i.e. -1 or 0), it means
variable speeds won't work with that particular effect.
FCNT Return frame count for current effect (0-9999 frames)
KNUM Return number in quick access panel
FXNM Return the effect name for the current effect
GRID Current effect number counting from 1 at effect A11 (-1 for CG or anim)
BANK Current effects bank counting from 0 for bank A
INFO Current numeric keypad selection (SA, LD, CG).
BACK Current Background color
BORD Current Border color
TERM Current termination settings returned as a number whose lowest
4 bits represent the state of the four input terminators (input 4
is least significant bit, input1 most significant bit).
SGPI Current GPI mode (POS,NEG,OFF)
FACE Number of monitors (2 or 3)
FMDV List of available framestore devices separated by commas
PJDV List of available project devices separated by commas
Switcher(FMSV, <Framestore number>, <Comment>,0) 1-field save
Switcher(FMSV, <Framestore number>, <Comment>,5) 4 field save
Switcher(FMSV, <Framestore number>, <Comment>) 4 field save
This command saves the contents of the frame buffer selected on the
preview bus to the current framestore device with the specified number
and comment. If a frame with that number already exists, the command
will fail. If the last argument is 0, only 1 field of video will be saved,
if that argument is 5, or is absent a standard 4-field save will occur.
Switcher( PAGE, <Page number> )
This command activates the specified CG page (0-99). This function will
return a failure code if the CG is not active or the specified page is
empty.
Switcher( FMLD, <FrameStore number> )
This command loads the specified FrameStore (0-999) from the active
FrameStore device. This function will return a failure code if the
specified FrameStore is not found.
Switcher( BKLD, <Project number> )
This command loads the book from the specified Project of the active
Project device. This function will return a failure code if the CG is not
active or the specified book does not exists.
Switcher( PJLD, <Project number> )
This command loads the specified Project of the active Project device.
This function will return a failure code if the specified Project is not
found. Note that this function DOES NOT update the CurrentProject file to
denote the newly loaded Project as the active Project.
Switcher( PJDV, <Project device string> )
Switcher( FSDV, <FrameStore device string> )
The above command designates a new Project or FrameStore device
respectively. The device string must be a physical device name, not a
logical or volume name. This function will return a failure code if the
specified device could not be found or was found without a Project or
FrameStore directory respectively.
Switcher( TOWB )
This command will pop the WorkBench screen up to the front and disables the
Switcher/Toaster system. This function will return a failure code if
WorkBench could not be opened.
Switcher( TOSW )
This command will pop the Switcher screen up to the front and enable the
Switcher/Toaster system.
Switcher( QUIT )
This command will completely shut down the Switcher/Toaster system upon its
arrival. All Switcher/Toaster resources will be freed and the program
exited.
Switcher( BACK , <Index # or -1> [, <Custom BG color>] )
This command will select the specified matte (background) color either from
indexing the current config slice matte color FGs (0-8) or a specified
custom matte color if the index is specified as -1. Custom color
specifications have a valid range of 0-4096. If you want to directly
specify snow, specify your custom color as a negative 16 bit word value.
Switcher( BORD , <index #> )
This command will select the specified border color via the index specified
for the current config slice border color FGs (0-7).
Switcher( KOFF )
Switcher( KBLK )
Switcher( KWHT )
The above commands forces the Key mode to be off, on with black enabled,
and on with white enabled respectively. Issuing this command does not
guarantee that the key mode will be forced to the desired mode. If it
doesn't work, the function will return a failure code.
Switcher( LVID )
Switcher( FVID )
The above commands forces the Video mode to be live or frozen respectively.
Issuing this command does not guarantee that the video mode will be forced
to the desired mode. If it doesn't work, the function will return a
failure code.
Switcher( NOMO )
The above command does a frame capture along with motion removal.
Switcher( PJSV, <Project number>, <Comment> )
Switcher( FMSV, <FrameStore number>, <Comment> )
The above commands save the specified Project or FrameStore respectively.
In the case of project saving, the CurrentProject file IS NOT updated to
reflect the saving of the specified project.
Switcher( PJDL, <Project number> )
Switcher( FMDL, <FrameStore number> )
The above commands delete the specified Project or FrameStore respectively.
These functions will fail if something goes wrong. In the case of project
deleting, the CurrentProject file IS NOT removed to reflect the deleting of
the specified project when it is also the currently active project.
Switcher( PJRN, <Project number>, <Comment> )
Switcher( FMRN, <FrameStore number>, <Comment> )
The above commands rename the specified Project or FrameStore respectively.
Switcher( SGPI, <OFF|POS|NEG> )
The above command sets up the Switcher GPI trigger system. 'OFF' disables
the system, 'POS' enables the system for positive GPI triggers, and 'NEG'
enables the system for negative GPI triggers. The changes to the Switcher
GPI trigger system made by this function WILL NOT be reflected in the
HardSets file. Tech note: GPI input occurs on pin 6 of the second
gameport (bit 7 of CIAA port A).
Switcher( DISW )
Switcher( ENSW )
The above commands are for disabling/enabling return of control from the
ARexx environment back to the Switcher. The primary use of these commands
is in running the Switcher entirely from ARexx scripts without allowing
input from the Switcher interface (keyboard, mouse, etc.) to interfere with
the execution of the ARexx script. Only diskchanges will still be
processed.
Switcher( DIIM )
Switcher( ENIM )
The above commands are for disabling/enabling rendering, the SoftSprite
system, and the mouse and keyboard IDCMP. These calls can be used to speed
up the processing of ARexx switcher commands at the expense of visual
feedback of the transition. When enabled, the Switcher display will be
completely redrawn.
Switcher( MEMC [, 'L' ] )
The above command returns the amount of free CHIP memory or the largest
CHIP chunk if the 'L' option is used. This command is ARexx dependent.
Switcher( MEMF [, 'L' ] )
The above command returns the amount of free FAST only memory or the
largest FAST only chunk if the 'L' option is used. This command is ARexx
dependent.
Switcher( CKTP )
Switcher( CKCG )
Switcher( CKLW )
The above commands check for the existence of ToasterPaint, CG, and
LightWave respectively. They return a 1 if the program entity is currently
loaded and 0 if not. These commands are ARexx dependent.
Switcher( LDTP )
Switcher( LDCG )
Switcher( LDLW )
The above commands attempt to load ToasterPaint, CG, or LightWave
respectively if those program entities are not already loaded. These
commands can be dangerous if the load fails and a requester comes up,
hanging ARexx.
Switcher( DPTP )
Switcher( DPCG )
Switcher( DPLW )
The above commands will unload ToasterPaint, CG, or LightWave respectively
if those program entities are loaded.
Switcher( STTP )
This command will enter ToasterPaint if and only if it is currently active,
otherwise this command is a NOP. Once entering ToasterPaint, your ARexx
message will not be returned until ToasterPaint exits back to the Switcher.
So be careful that you don't hang yourself.
Switcher( PJXI, <Project number> )
Switcher( FMXI, <FrameStore number> )
The above commands test the existence of the specified Project or
FrameStore respectively, returning a 1 if the entity exists, 0 if not.
These commands are ARexx dependent.
Switcher( PJNM )
Switcher( FSNM )
The above commands return the current device name string of the Project and
FrameStore systems respectively. These commands are ARexx dependent.
Switcher( PJCK, <Project device string> )
Switcher( FSCK, <FrameStore device string> )
The above commands check for the existence of a Project or FrameStore
directory on the specified Project or FrameStore device respectively.
Returns a 1 if the directory exists, 0 if not , or -1 if the specified
device is invalid. These commands are ARexx dependent.
Switcher( PJMK, <Project device string> )
Switcher( FSMK, <FrameStore device string> )
The above commands attempt to make a Project or FrameStore directory on the
specified Project or FrameStore device. They return a 1 if the directory
was created or already existed, 0 if something went wrong. These commands
are ARexx dependent.
Switcher( PJBD )
Switcher( FSBD )
The above commands force the Switcher internal string tables for the
Project or FrameStore respectively to be rebuilt and updated. The above
commands are useful when you happen to dabble directly in the active
Project or FrameStore directory. The changes you might make will most
likely be missed by the Switcher. These commands insure that the Switcher
(and other hosted entities) will know of these changes.
Switcher( FSCT, <FrameStore device string> )
The above command returns the number of FrameStores the specified
FrameStore device can hold. Returns a -1 if something went wrong with
device access. This command is ARexx dependent.
Switcher( OGPI )
This command causes an output GPI trigger to occur in accordance to the
current settings of the GPI system. This command is a NOP if GPI
triggering is disabled. Tech note: GPI output occurs on pin 9 of the
second gameport (potentiometer circuit).
Switcher( CKGD, <ToolBox Effect> )
This command checks the specified ToolBox Effect to see if it exists. The
ToolBox Effect address is a 3 character code. The first character is the
grid selector code A-I for the ToolBox grids. The second character is
the grid row selector 1-4, and the the third character is the column
selector 1-8. This function will return a failure on a bogus ToolBox
Effect address. Returns a 1 if the specified ToolBox Effect exists, 0
otherwise. This command is ARexx dependent.
Switcher( RDGD, <ToolBox Effect>, <S | M | F | V> )
This command reads the FieldCount of a ToolBox Effect's specified speed
mode. The ToolBox Effect address is a 3 character code. The first
character is the grid selector code A-I for the ToolBox grids. The
second character is the grid row selector 1-4, and the the third character
is the column selector 1-8. The speed mode must be specified as S (SLOW),
M (MEDIUM), F (FAST), or V (VAR). The above arguments must be specified correctly
and the specified ToolBox Effect exist or this function will return a
failure. If all goes well, a FieldCount value will be returned. This
command is ARexx dependent.
Switcher( WTGD, <ToolBox Effect>, <S | M | F | V>, <FieldCount> )
This command writes the specified FieldCount to the specified ToolBox
Effect's specified speed mode. The ToolBox Effect address is as mentioned
in the above command. The speed mode must be specified as S (SLOW), M
(MEDIUM), F (FAST), V (VARIABLE). The FieldCount should be a value in the
interval of 1-65535. The above arguments must be specified correctly and
the specified ToolBox Effect exist or this function will return a failure.
If all goes well, the FieldCount value will be placed and ready for use.
Changing the FieldCount of a ToolBox Effect which is currently active may not
always work, since the speeds are loaded when the effect is selected. To be
certain that the changes take effect, select a different effect, change the
speed of the original effect, then reselect it.
Switcher( TERM, <mask> )
This command sets the termination for the four video inputs. The mask will
be a number from 0 to 15 whose bits (0-3) control the termination setting for
inputs 1-4.
Switcher( SRGB, <filename>,<field>,<bank>)
This command saves the contents of one of the digital video buffer to a
standard IFF24 type rgb file. The filename should include the complete file
path. The bank argument should be 0 for DV1 and 1 for DV2. Field selects
which of the 4 fields (0-3) of video stored in the frame buffer should be
saved. Setting field to 4 will initiate motion removal and save 2 fields.
Setting field to 5 will save a full 4-field 'color frame'. This is the best
quality save.
NOTE: Not all of these settings are currently implemented .
Switcher(LRGB,<filename>,<bank>)
This command loads an RGB image into the specified digital video buffer.
The filename should include the complete file path. The bank argument
should be 0 for DV1 and 1 for DV2.
Switcher(FACE,<monitors>)
This command sets the interface to 2 monitor or 3 monitor mode, when
monitor is 2 or 3 respectively.
Switcher(GROF)
This command turns off the image hilighting system and software
mouse pointer. Each call to this function MUST be matched with
exactly one (1) call to the GRON function. After this call no
interface elements will be hilighted. The function returns a pointer to
the bitmap structure used by the screen.
Switcher(GRON)
This command turns on the image hilighting system and software mouse
pointer after a GROF. Each call to this function MUST be matched with
exactly one (1) prior call to the GROF function.